home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Collection of Tools & Utilities
/
Collection of Tools and Utilities.iso
/
graphic
/
tweak16b.zip
/
MISC
/
VGABIOS.TXT
< prev
Wrap
Text File
|
1993-01-22
|
29KB
|
708 lines
----------1000-------------------------------
INT 10 - VIDEO - SET VIDEO MODE
AH = 00h
AL = mode (see below)
Return: AL = video mode flag (Phoenix BIOS)
20h mode > 7
30h modes <= 7 except mode 6
3Fh mode 6
AL = CRT controller mode byte (Phoenix 386 BIOS v1.10)
Notes: IBM standard modes do not clear the screen if the high bit of AL is set
(EGA or higher only)
SeeAlso: AX=0070h,AX=007Eh,AX=10F0h,AX=6F05h,AH=FFh"GO32",INT 5F/AH=00h
Values for video mode:
text/ text pixel pixel colors display scrn system
grph resol box resoltn pages addr
00h = T 40x25 8x14 16gray 8 B800 EGA
= T 40x25 8x16 16 8 B800 MCGA
= T 40x25 9x16 16 8 B800 VGA
01h = T 40x25 8x14 16 8 B800 EGA
= T 40x25 8x16 16 8 B800 MCGA
= T 40x25 9x16 16 8 B800 VGA
02h = T 80x25 8x14 16gray 4 B800 EGA
= T 80x25 8x16 16 4 B800 MCGA
= T 80x25 9x16 16 4 B800 VGA
03h = T 80x25 8x14 16 4 B800 EGA
= T 80x25 8x16 16 4 B800 MCGA
= T 80x25 9x16 16 4 B800 VGA
04h = G 40x25 8x8 320x200 4 B800 CGA,PCjr,EGA,MCGA,VGA
05h = G 40x25 8x8 320x200 4gray B800 CGA,PCjr,EGA
= G 40x25 8x8 320x200 4 B800 MCGA,VGA
06h = G 80x25 8x8 640x200 2 B800 CGA,PCjr,EGA,MCGA,VGA
07h = T 80x25 9x14 mono var B000 MDA,Hercules,EGA
= T 80x25 9x16 mono B000 VGA
0Bh = reserved (used internally by EGA BIOS)
0Ch = reserved (used internally by EGA BIOS)
0Dh = G 40x25 8x8 320x200 16 8 A000 EGA,VGA
0Eh = G 80x25 8x8 640x200 16 4 A000 EGA,VGA
0Fh = G 80x25 8x14 640x350 mono 2 A000 EGA,VGA
10h = G 80x25 8x14 640x350 4 2 A000 64k EGA
= G 640x350 16 A000 256k EGA,VGA
11h = G 80x30 8x16 640x480 mono A000 VGA,MCGA,ATI EGA,ATI VIP
12h = G 80x30 8x16 640x480 16/256k A000 VGA,ATI VIP
= G 80x30 8x16 640x480 16/64 A000 ATI EGA Wonder
13h = G 40x25 8x8 320x200 256/256k A000 VGA,MCGA,ATI VIP
----------1001-------------------------------
INT 10 - VIDEO - SET TEXT-MODE CURSOR SHAPE
AH = 01h
CH = bit 7 should be zero
bits 6,5 cursor blink
(00=normal, 01=invisible, 10=erratic, 11=slow)
(00=normal, other=invisible on EGA/VGA)
bits 4-0 top scan line containing cursor
CL = bottom scan line containing cursor (bits 0-4)
Notes: buggy on EGA systems--BIOS remaps cursor shape in 43 line modes, but
returns unmapped cursor shape
applications which wish to change the cursor by programming the
hardware directly on EGA or above should call INT 10/AX=1130h or
read 0040h:0085h first to determine the current font height
BUG: AMI 386 BIOS and AST Premier 386 BIOS will lock up the system if AL
is not equal to the current video mode
SeeAlso: AH=03h,AX=CD05h
----------1002-------------------------------
INT 10 - VIDEO - SET CURSOR POSITION
AH = 02h
BH = page number
0-3 in modes 2&3
0-7 in modes 0&1
0 in graphics modes
DH = row (00h is top)
DL = column (00h is left)
SeeAlso: AH=03h,AH=05h
----------1003-------------------------------
INT 10 - VIDEO - GET CURSOR POSITION AND SIZE
AH = 03h
BH = page number
0-3 in modes 2&3
0-7 in modes 0&1
0 in graphics modes
Return: AX = 0000h (Phoenix BIOS)
CH = start scan line
CL = end scan line
DH = row (00h is top)
DL = column (00h is left)
Notes: a separate cursor is maintained for each of up to 8 display pages
many ROM BIOSes incorrectly return the default size for a color display
(start 06h, end 07h) when a monochrome display is attached
SeeAlso: AH=01h,AH=02h
----------1004-------------------------------
INT 10 - VIDEO - READ LIGHT PEN POSITION (EGA Only)
AH = 04h
Return: AH = light pen trigger flag
00h not down/triggered
01h down/triggered
DH,DL = row,column of character light pen is on
CH = pixel row (graphics modes 04h-06h)
CX = pixel row (graphics modes with >200 rows)
BX = pixel column
Notes: on a CGA, returned column numbers are always multiples of 2 (320-
column modes) or 4 (640-column modes)
returned row numbers are only accurate to two lines
----------1005-------------------------------
INT 10 - VIDEO - SELECT ACTIVE DISPLAY PAGE
AH = 05h
AL = new page number (00h to number of pages - 1) (see AH=00h)
SeeAlso: AH=0Fh
----------1006-------------------------------
INT 10 - VIDEO - SCROLL UP WINDOW
AH = 06h
AL = number of lines by which to scroll up (00h = clear entire window)
BH = attribute used to write blank lines at bottom of window
CH,CL = row,column of window's upper left corner
DH,DL = row,column of window's lower right corner
Note: affects only the currently active page (see AH=05h)
Warning: some implementations have a bug which destroys BP
SeeAlso: AH=07h,AH=72h,AH=73h
----------1007-------------------------------
INT 10 - VIDEO - SCROLL DOWN WINDOW
AH = 07h
AL = number of lines by which to scroll down (00h=clear entire window)
BH = attribute used to write blank lines at top of window
CH,CL = row,column of window's upper left corner
DH,DL = row,column of window's lower right corner
Note: affects only the currently active page (see AH=05h)
Warning: some implementations have a bug which destroys BP
SeeAlso: AH=06h,AH=72h,AH=73h
----------1008-------------------------------
INT 10 - VIDEO - READ CHARACTER AND ATTRIBUTE AT CURSOR POSITION
AH = 08h
BH = page number (00h to number of pages - 1) (see AH=00h)
Return: AH = attribute
bit 7: blink
bits 6-4: background color
000 black
001 blue
010 green
011 cyan
100 red
101 magenta
110 brown
111 white
bits 3-0: foreground color
0000 black 1000 dark gray
0001 blue 1001 light blue
0010 green 1010 light green
0011 cyan 1011 light cyan
0100 red 1100 light red
0101 magenta 1101 light magenta
0110 brown 1110 yellow
0111 light gray 1111 white
AL = character
Notes: for monochrome displays, a foreground of 1 with background 0 is underlined
the blink bit may be reprogrammed to enable intense background colors
using AX=1003h or by programming the CRT controller
SeeAlso: AH=09h,AX=1003h
----------1009-------------------------------
INT 10 - VIDEO - WRITE CHARACTER AND ATTRIBUTE AT CURSOR POSITION
AH = 09h
AL = character to display
BH = page number (00h to number of pages - 1) (see AH=00h)
BL = attribute (text mode) or color (graphics mode)
if bit 7 set in graphics mode, character is xor'ed onto screen
CX = number of times to write character
Notes: all characters are displayed, including CR, LF, and BS
replication count in CX may produce an unpredictable result in graphics
modes if it is greater than the number of positions remaining in the
current row
SeeAlso: AH=08h,AH=0Ah,AH=4Bh,INT 17/AH=60h,INT 1F,INT 43,INT 44
----------100A-------------------------------
INT 10 - VIDEO - WRITE CHARACTER ONLY AT CURSOR POSITION
AH = 0Ah
AL = character to display
BH = page number (00h to number of pages - 1) (see AH=00h)
BL = attribute (PCjr only) or color (graphics mode)
if bit 7 set in graphics mode, character is xor'ed onto screen
CX = number of times to write character
Notes: all characters are displayed, including CR, LF, and BS
replication count in CX may produce an unpredictable result in graphics
modes if it is greater than the number of positions rem